package Exe3_4;

import java.util.Scanner;
import java.util.Set;

public class Carro {
	/*ainda falta fazer
- existeComponente(): Verifica se o Componente pertence ao Carro.
*/
	
	private int codigo;
	private String nomeCarro;
	private float valorVenda;
	private float valorCusto;
	private float ipi;
	private Set<Componente> componentes;
	
	public Carro(String nomeCarro, float ipi) {
		super();
		this.nomeCarro = nomeCarro;
		this.ipi = ipi;
	}

	public int getCodigo() {
		return codigo;
	}

	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}

	public String getNomeCarro() {
		return nomeCarro;
	}

	public void setNomeCarro(String nomeCarro) {
		this.nomeCarro = nomeCarro;
	}

	public float getValorVenda() {
		return valorVenda;
	}

	public void setValorVenda(float valorVenda) {
		this.valorVenda = valorCusto + valorCusto * ipi/100 ;
	}

	public float getValorCusto() {
		return valorCusto;
	}

	public void setValorCusto(Set<Componente> componentes) {
		for(Componente c : componentes){
			this.valorCusto = this.valorCusto + c.getValor();
		}
	}

	public float getIpi() {
		return ipi;
	}

	public void setIpi(float ipi) {
		this.ipi = ipi;
	}

	public Set<Componente> getComponentes() {
		return componentes;
	}

	public void setComponentes(Set<Componente> componentes) {
		this.componentes = componentes;
	}
	
	@SuppressWarnings("resource")
	public void setCarro(){
		System.out.println("Cadastra Carro!");
		System.out.println("Codigo: ");
		Scanner sc = new Scanner(System.in);
		this.setCodigo(sc.nextInt());
		
		System.out.println("Nome do Carro: ");
		sc = new Scanner(System.in);
		this.setNomeCarro(sc.next());
		
		System.out.println("Valor de Venda: ");
		sc = new Scanner(System.in);
		this.setValorVenda(sc.nextFloat());
		
		this.setValorCusto(componentes);
		
		System.out.println("IPI: ");
		sc = new Scanner(System.in);
		this.setIpi(sc.nextFloat());
	}
	

	public void imprimeCarro() {
		System.out.println(
		"Carro [codigo=" + codigo + ", nomeCarro=" + nomeCarro
				+ ", valorVenda=" + valorVenda + ", valorCusto=" + valorCusto
				+ ", ipi=" + ipi + ", componentes=" + componentes + "]");
		
		for(Componente c : componentes)
			System.out.println(c.imprimeComponente());
	}
	
	public void existeComponente(){
		//TODO
	}
	
}
